import { Module } from '@nestjs/common';
import { UsersModule } from './users/users.module';
import { FilesModule } from './files/files.module';
import { AuthModule } from './auth/auth.module';
import I18nModule from '@/common/i18n/i18n.module';
import ConfigModule from './config/config.module';
import { AuthAppleModule } from './auth-apple/auth-apple.module';
import { AuthFacebookModule } from './auth-facebook/auth-facebook.module';
import { AuthGoogleModule } from './auth-google/auth-google.module';
import { MailModule } from './mail/mail.module';
import { HomeModule } from './home/home.module';
import { SessionModule } from './session/session.module';
import { LoggerModule } from '@/common/logger/logger.module';
import { featureModules } from '@/features';
import { infrastructureDatabaseModule } from '@/database/db.module';

@Module({
  imports: [
    ConfigModule,
    infrastructureDatabaseModule,
    I18nModule,
    UsersModule,
    FilesModule,
    AuthModule,
    AuthFacebookModule,
    AuthGoogleModule,
    AuthAppleModule,
    SessionModule,
    MailModule,
    HomeModule,
    LoggerModule,
    ...featureModules,
  ],
})
export class AppModule {}
